Skip to main content
Version: Staging

OptionFlexEvent

V8 Message Definiton

The most recent (last) record for each active FLEX option.

METADATA

AttributeValue
Topic2750-market-data-options
MLink TokenOptMktData
ProductSRLive
accessTypeSELECT

Table Definition

FieldTypeKeyDefault ValueComment
sequenceNumberINTPRI0sequence of the flex event message counting from the start of day or last restart of the feed handler
eventIdINT0unique id of the event assigned by SpiderRock subsequent messages on the event will use the same id
prtExchenum - OptExch'None'exchange code that produced this flex event
prtRootVARCHAR(6)''security symbol of the FLEX option
requestIdINT0request identifier associated with this trade assigned by the exchange these appear to not be 100 reliable particularly for PHLX
eventTypeenum - FlexEventType'None'type of event this message represents eg RFQ QTE LST
totalQuantityINT0total quantity of the flex trade
packagePriceDOUBLE0total price of the flex trade inclusive of all legs
netTimestampBIGINT0timestamp of when this message was received
srcTimestampBIGINT0timestamp from the exchange of when this message was sent
LegsListJSON'JSON_OBJECT()'

PRIMARY KEY DEFINITION (Unique)

FieldSequence
sequenceNumber1

JSON Block (LegsList)

FieldTypeComment
okeyOptionKeyOptionKey of the instrument if available
flexTypeenum - flexTypeEuropean or American exercise AM or PM exercise time
quantityintquantity of contracts in this leg of the event
pricedoubleprice of this leg of the event could be quoted in percentage of closing price
priceTypeenum - priceTypeprice type of the event
deltadoubledelta supplied with the event for delta adjusted at close events
refPricedoublereference price of the event for use in delta ajusting the final price
closePricedoubleclose price used for both percentage adjusted and delta adjusted events
priceAdjdoublefinal adjusted price made available after the event is marked as PctAdjApplied or DeltaAdjApplied
strikeAdjdoublefinal adjusted strike made available after the event is marked PctAdjApplied
bidPricedoublebid price from QTE messages
bidSizedoublebid size from QTE messages
askPricedoubleask price from QTE messages
askSizedoubleask size from QTE messages
rawTextstringraw text of the flex event

CREATE TABLE EXAMPLE QUERY

CREATE TABLE `SRLive`.`MsgOptionFlexEvent` (
`sequenceNumber` INT NOT NULL DEFAULT 0 COMMENT 'sequence of the flex event message counting from the start of day or last restart of the feed handler',
`eventId` INT NOT NULL DEFAULT 0 COMMENT 'unique id of the event assigned by SpiderRock, subsequent messages on the event will use the same id',
`prtExch` ENUM('None','AMEX','BOX','CBOE','ISE','NYSE','PHLX','NSDQ','BATS','C2','NQBX','MIAX','GMNI','CME','CBOT','NYMEX','COMEX','ICE','EDGO','MCRY','MPRL','SDRK','DQTE','EMLD','CFE','MEMX','EUREX','CEDX','NXAM','NXBR','NXLS','NXML','NXOS','NXP','ICEFE') NOT NULL DEFAULT 'None' COMMENT 'exchange code that produced this flex event',
`prtRoot` VARCHAR(6) NOT NULL DEFAULT '' COMMENT 'security symbol of the FLEX option',
`requestId` INT NOT NULL DEFAULT 0 COMMENT 'request identifier associated with this trade assigned by the exchange (these appear to not be 100% reliable, particularly for PHLX)',
`eventType` ENUM('None','RFQ','QTE','LST','CXL','ADM','IND') NOT NULL DEFAULT 'None' COMMENT 'type of event this message represents, e.g., RFQ, QTE, LST',
`totalQuantity` INT NOT NULL DEFAULT 0 COMMENT 'total quantity of the flex trade',
`packagePrice` DOUBLE NOT NULL DEFAULT 0 COMMENT 'total price of the flex trade inclusive of all legs',
`netTimestamp` BIGINT NOT NULL DEFAULT 0 COMMENT 'timestamp of when this message was received',
`srcTimestamp` BIGINT NOT NULL DEFAULT 0 COMMENT 'timestamp from the exchange of when this message was sent',
`LegsList` JSON NOT NULL DEFAULT JSON_OBJECT() CHECK(JSON_VALID(LegsList)),
PRIMARY KEY USING HASH (`sequenceNumber`)
) ENGINE=SRSE DEFAULT CHARSET=LATIN1 COMMENT='The most recent (last) record for each active FLEX option.';

SELECT TABLE EXAMPLE QUERY

SELECT
`sequenceNumber`,
`eventId`,
`prtExch`,
`prtRoot`,
`requestId`,
`eventType`,
`totalQuantity`,
`packagePrice`,
`netTimestamp`,
`srcTimestamp`,
`LegsList`
FROM `SRLive`.`MsgOptionFlexEvent`
WHERE
/* Replace with a INT */
`sequenceNumber` = 5;

Doc Columns Query

SELECT * FROM SRLive.doccolumns WHERE TABLE_NAME='OptionFlexEvent' ORDER BY ordinal_position ASC;